home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / esc.jar / com / extensibility / xml / MetaPropHash.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-06-30  |  2.5 KB  |  82 lines

  1. package com.extensibility.xml;
  2.  
  3. import com.extensibility.util.Debug;
  4. import com.extensibility.util.StringUtilities;
  5. import java.util.Enumeration;
  6. import java.util.Hashtable;
  7.  
  8. public class MetaPropHash extends Hashtable {
  9.    public Enumeration getMetaProps() {
  10.       return ((Hashtable)this).keys();
  11.    }
  12.  
  13.    public void setMetaProps(Hashtable var1) {
  14.       ((Hashtable)this).clear();
  15.       Enumeration var2 = var1.keys();
  16.  
  17.       while(var2.hasMoreElements()) {
  18.          Object var3 = var2.nextElement();
  19.          Object var4 = var1.get(var3);
  20.          ((Hashtable)this).put(var3, var4);
  21.       }
  22.  
  23.    }
  24.  
  25.    public void putMetaProp(String var1, Hashtable var2) {
  26.    }
  27.  
  28.    public void putMetaProp(String var1, String var2) {
  29.       if (var1.indexOf(":") == -1) {
  30.          Debug.assert(DTDParser.isNmToken(var2) || DTDParser.isNmTokens(var2), String.valueOf("Value must be a nmtoken or nmtokens: ").concat(String.valueOf(var2)));
  31.       }
  32.  
  33.       ((Hashtable)this).put(var1, var2);
  34.    }
  35.  
  36.    public void appendMetaProp(String var1, String var2) {
  37.       Object var3 = this.getMetaProp(var1);
  38.       if (var3 instanceof String[]) {
  39.          int var4 = ((String[])var3).length;
  40.          String[] var5 = new String[var4 + 1];
  41.          System.arraycopy(var3, 0, var5, 0, var4);
  42.          var5[var4] = var2;
  43.          ((Hashtable)this).put(var1, var5);
  44.       } else {
  45.          Debug.assert(var3 == null);
  46.          ((Hashtable)this).put(var1, new String[]{var2});
  47.       }
  48.  
  49.    }
  50.  
  51.    public String getMetaPropAsString(String var1) {
  52.       Object var2 = this.getMetaProp(var1);
  53.       if (var2 != null && !(var2 instanceof String)) {
  54.          if (var2 instanceof String[]) {
  55.             String[] var3 = (String[])var2;
  56.             return StringUtilities.concatWithWhitespace(var3, true, true);
  57.          } else {
  58.             return var2 instanceof Hashtable ? XMLStringUtilities.asAttributes((Hashtable)var2) : var2.toString();
  59.          }
  60.       } else {
  61.          return (String)var2;
  62.       }
  63.    }
  64.  
  65.    public void putMetaPropList(String var1, String var2) {
  66.       String[] var3 = StringUtilities.extract(var2);
  67.       ((Hashtable)this).put(var1, var3);
  68.    }
  69.  
  70.    public void putMetaPropAttrs(String var1, Hashtable var2) {
  71.       ((Hashtable)this).put(var1, var2);
  72.    }
  73.  
  74.    public Object getMetaProp(String var1) {
  75.       return ((Hashtable)this).get(var1);
  76.    }
  77.  
  78.    public void removeMetaProp(String var1) {
  79.       ((Hashtable)this).remove(var1);
  80.    }
  81. }
  82.